package com.lrs.java.designPattern.behavioral.strategy;

public class Client {

	public static void main(String[] args) {
		
		
		//当不同算法之间需要不同的数据信息时
		//Option 1) 在Context的strategy.calcPrice()中将context当做参数传入，
		//这样concreteStrategy就能拿到context中存储的一些状态信息【推荐】
		
		
		//Option 2) 运用具体Strategy的构造方法，传入相应的数据信息
		DiscountStrategy strategy = new FlatRateDiscountStrategy(5);
		double price = 200;
		DiscountContext ctx = new DiscountContext(price, strategy);
		
		ctx.calcCommodity();
		

		
	}
}
